package com.yujiahao.bigdata.rdd.partitions

import org.apache.spark.rdd.RDD
import org.apache.spark.{Partitioner, SparkConf, SparkContext}

//TODO 将之前自定义分区的数据读取出来
object Spark01_Save {
  def main(args: Array[String]): Unit = {
    //TODO 1、获得Spark环境的连接
    // 参数解读：setAppName("当前执行程序的名字").setMaster("当前的环境")
    // 分布式环境的基本架构为 主 - 从
    val conf: SparkConf = new SparkConf().setAppName("WordCount").setMaster("local")
    val sc: SparkContext = new SparkContext(conf)
    //TODO 3、业务逻辑
    val rdd: RDD[(String, Int)] = sc.makeRDD(List(
      ("nba", 1),
      ("cba", 2),
      ("nba", 3),
      ("wnba", 4)), 2)
    //TODO 将之前自定义分区的数据读取出来
    println(sc.textFile("output").collect().mkString(" "))
    // ._1 String ._2 Int tuple 泛型
    println(sc.objectFile[(String, Int)]("output1").collect().mkString(" "))
    println(sc.sequenceFile[String, Int]("output2").collect().mkString(" "))
    println(sc.textFile("output3").collect().mkString(" "))


  }
}
